package cn.huolabao.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@ApiModel(value="cn-huolabao-model-SysPermission")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "sys_permission")
public class SysPermission implements Serializable {
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value="")
    private Integer id;

    /**
     * 菜单名
     */
    @TableField(value = "permission_name")
    @ApiModelProperty(value="菜单名")
    private String permissionName;

    @TableField(value = "component")
    @ApiModelProperty(value="")
    private String component;

    @TableField(value = "component_name")
    @ApiModelProperty(value="")
    private String componentName;

    @TableField(value = "redirect")
    @ApiModelProperty(value="")
    private String redirect;

    /**
     * 链接地址
     */
    @TableField(value = "`path`")
    @ApiModelProperty(value="链接地址")
    private String path;

    @TableField(value = "link")
    @ApiModelProperty(value="")
    private String link;

    /**
     * 父级ID
     */
    @TableField(value = "pid")
    @ApiModelProperty(value="父级ID")
    private Integer pid;

    @TableField(value = "icon")
    @ApiModelProperty(value="")
    private String icon;

    /**
     * 权限
     */
    @TableField(value = "permission")
    @ApiModelProperty(value="权限")
    private String permission;

    /**
     * 菜单类型:1,菜单,2,按钮
     */
    @TableField(value = "permission_type")
    @ApiModelProperty(value="菜单类型:1,菜单,2,按钮")
    private Integer permissionType;

    /**
     * 状态
     */
    @TableField(value = "`status`")
    @ApiModelProperty(value="状态")
    private Integer status;

    /**
     * 描述
     */
    @TableField(value = "descript")
    @ApiModelProperty(value="描述")
    private String descript;

    @TableField(value = "sort")
    @ApiModelProperty(value="")
    private Integer sort;

    /**
     * 创建人
     */
    @TableField(value = "create_by")
    @ApiModelProperty(value="创建人")
    private String createBy;

    /**
     * 修改人
     */
    @TableField(value = "update_by")
    @ApiModelProperty(value="修改人")
    private String updateBy;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    @ApiModelProperty(value="创建时间")
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    @ApiModelProperty(value="更新时间")
    private Date updateTime;

    /**
     * 逻辑删除
     */
    @TableField(value = "is_delete")
    @ApiModelProperty(value="逻辑删除")
    private Integer isDelete;

    private static final long serialVersionUID = 1L;

    public static final String COL_ID = "id";

    public static final String COL_PERMISSION_NAME = "permission_name";

    public static final String COL_COMPONENT = "component";

    public static final String COL_COMPONENT_NAME = "component_name";

    public static final String COL_REDIRECT = "redirect";

    public static final String COL_PATH = "path";

    public static final String COL_LINK = "link";

    public static final String COL_PID = "pid";

    public static final String COL_ICON = "icon";

    public static final String COL_PERMISSION = "permission";

    public static final String COL_PERMISSION_TYPE = "permission_type";

    public static final String COL_STATUS = "status";

    public static final String COL_DESCRIPT = "descript";

    public static final String COL_SORT = "sort";

    public static final String COL_CREATE_BY = "create_by";

    public static final String COL_UPDATE_BY = "update_by";

    public static final String COL_CREATE_TIME = "create_time";

    public static final String COL_UPDATE_TIME = "update_time";

    public static final String COL_IS_DELETE = "is_delete";
}